Computers that support PC Cards have one or more PC Card slots that are known as A, B, C or 1, 2, 3. Integrated circuit chips such as the TI1130, TI1131, and TI1250 (Cardbus) controller chip sets, and many more control the slots.
In order for communications programs to use a PC Card, you need interface software of some sort. At present, several interfaces are available, and each has its advantages and disadvantages. Point Connectivity Enablers and Card Services provide the two most important interfaces. Both are available under DOS, but OS/2 requires you to use Card Services.
If you decide to use Card Services, you must install and enable it before running LANAID.
A third type of interface is Socket Services.
The following diagram shows how the interfaces relate to each
other
:
These are small programs that provide an interface directly to the PC Card controller; therefore, the programs support a particular type of controller.
In the DOS environment only, you have the option of using these point connectivity enablers instead of Card and Socket Services.
There is one point enabler supplied for this PC Card:
Notes:
This is a BIOS-type interface that provides a way to gain access to the PC Card sockets (slots) of a computer. It identifies how many sockets your computer has and detects the insertion or removal of a PC Card while the computer is switched on. It has an interface to Card Services. Socket Services is part of the PCMCIA Specification.
The Socket Services device driver is usually provided by the manufacturer of the computer, because the driver must understand the computer's BIOS and PCMCIA controller.
When Socket Services has detected that a PC Card has been inserted, this software management interface allows automatic allocation of system resources. Such system resources are memory, interrupts, slots, and I/O ports.
Client drivers call Card Services to allocate and de-allocate system resources. When Socket Services detects an insertion or removal of a PC Card, it sends notification to Card Services. Card Services then notifies its registered client drivers, such as IBMTOKCS.OS2, that they should allocate or de-allocate resources.
If the installation program detects Card and Socket Services in your computer, it will default to Autoset mode. Autoset mode allows your LAN driver to negotiate with Card Services for memory space and interrupts. This helps to prevent conflicts with other PC Cards that are installed in your computer. You will not know exactly what memory addresses and interrupts you have. It will default to Autoset mode if the driver supports it.
Card Services requires Socket Services. The Card Services interface is usually provided with the operating system.
Stay-resident program that uses system memory. The amount varies according to the type of PC Card support and the drivers used.
If you want to use a Token-Ring device driver that does not have built-in Card Services support on a system that uses Card Services, use CS20TOK.EXE. This program is a Card Services Enabler that uses Card and Socket Services to configure the IBM Turbo 16/4 Token-Ring PC Card 2. In order for the system to work correctly, you must specify the resources desired for the PC Card. They must also agree with the settings of the Token-Ring device driver.
The DOS Card Services 2.00 interface enabler shipped on the CD-ROM is CS20TOK.EXE.
There is much debate about this. In principle, Card and Socket Services is the better method of connection. It allows you to insert or remove PC Cards from any socket, even while the computer is switched on. It also automatically allocates resources like memory, I/O ports, interrupt levels, and slots.
Point Enablers are popular because they remove themselves from memory after having been loaded. Card and Socket Services needs 30-40 KB.
For point enablers, you have to specify the slot in which a particular PC Card will be used. You also have to specify memory locations, interrupt levels, and other parameters. This is not difficult unless you use several PC Cards at different times. In that case, you need to make certain that what you specify does not conflict with any other PC Cards installed in your computer.
Card and Socket Services turns out to be most helpful when you have a number of PC Cards installed in your computer. If the installation program detects Card and Socket Services in your computer, it will default to Autoset mode. Autoset mode allows your LAN driver to negotiate with Card and Socket Services for memory space and interrupts every time you switch on your computer. This helps to prevent conflicts with other PC Cards that are installed in your computer. You will not know exactly what memory addresses and interrupts you are using.
If your computer has a memory manager preinstalled, or you would like to use one, you must reconfigure your computer. The memory manager must not use the same memory as your PC Card. If you have more than one PC Card, you must reserve the memory needed for all of them. One PC Card cannot use the same memory ranges as another.
To determine whether or not your computer has a memory manager, edit your CONFIG.SYS file and look for the memory manager driver name. For example, when using EMM386, look for the following command:
DEVICE=C:\DOS\EMM386.EXE ......
When using a memory manager, considerations for your PC Card environment (Point Enabler or Card and Socket Services) are required. Listed here are explanations for handling these environments with a memory manager. It is not intended to be all-inclusive. To understand completely your memory manager and your configuration files, refer to your computer operating system manual.
If you are using enhanced mode, 8 KB of memory must be excluded. If you are using compatibility mode, 24 KB of memory must be excluded.
For enhanced mode:
DEVICE=C:\POINTTR.EXE SA RS=4 MMIO=D000 IRQ=9 SRAM=D000,4 WS=0 . . DEVICE=C:\DOS\HIMEM.SYS . . DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=D000-D1FF
For compatibility mode:
DEVICE=C:\POINTTR.EXE SA RS=4 MMIO=D000 IRQ=9 SRAM=D800,16 WS=0 . . DEVICE=C:\DOS\HIMEM.SYS . . DEVICE=C:\DOS\EMM386.EXE 1024 RAM X=D000-D1FF X=D800-DBFF
Notice that the EMM386 line excludes the ranges that the POINTTR.EXE enabler uses.
If you are in enhanced mode, 8 KB of the MMIO range must be excluded.
In compatibility mode, 8 KB of the MMIO range (MMIO base address default of D000) and 16 KB of the SRAM range (SRAM base address default of D800) must be excluded.
In addition, Card Services needs at least 4 KB excluded for its use. Remember, if you are using more than one PC Card then memory locations for the other PC Cards must also be excluded.
For IBM CS, the /MA is used to specify the range of memory the PC Cards and Card Services use. The parameter is added to the Resource Map Utility line in your CONFIG.SYS. For example:
On a computer using memory range C0000-CFFFF:
DEVICE=C:\DOS\EMM386.EXE NOEMS X=C000-CFFF . . DEVICE=C:\DOS\DICRMU02.SYS /MA=C000-CFFF
The Resource Map Utility driver name may be slightly different for the various computers. Consult your operating manual.
For some versions of Phoenix Card Services, the /ADDR parameter is used to specify the 4-KB memory range used by Card Services. The memory range chosen for the PC Cards must not conflict with this range. The /ADDR parameter is placed on the Phoenix device driver line in the CONFIG.SYS file. Consult your operation manual as to the version you have and whether the /ADDR option is needed.
Note: | The /ADDR needs only the starting address of the Card Services memory area. |
On a computer using memory range D0000-DFFFF:
DEVICE=C:\DOS\EMM386.EXE NOEMS X=D000-DFFF . . DEVICE=C:\PCMPLUS\PCMCS.EXE /WAIT=12 /ADDR=D0 /IRQ=9
IBM Card Services
Expanded memory specification (EMS) requires 64 KB (one page frame) of contiguous memory. This may cause you to move your PC Card memory range. With EMM386 you set the page frame base address using the FRAME= option on the memory manager line in the CONFIG.SYS. If the FRAME= option is not used, EMM386 will find the first 64-KB block of contiguous memory. For example:
DEVICE=C:\DOS\EMM386.EXE RAM 1024 X=D000-D1FF FRAME=C000
Note: | The Token-Ring PC Card uses D0000-D1FFF for 8-KB MMIO. The FRAME= parameter sets the base address of the EMS page frame (the page frame uses C0000-CFFFF). No PC Cards should be set to use memory in the range C0000-CFFFF. |
DEVICE=C:\DOS\EMM386.EXE RAM 1024 X=D000-D1FF X=D800-DBFF FRAME=C000
Note: | The Token-Ring PC Card uses D0000-D1FFF for 8-KB MMIO and D8000-DBFFF for 16-KB SRAM. The FRAME= parameter sets the base address of the EMS page frame (the page frame uses C0000-CFFFF). No PC Cards should be set to use memory in the range C0000-CFFFF. |
DEVICE=C:\DOS\EMM386.EXE RAM 1024 X=D000-DBFF FRAME=C000 . . DEVICE=C:\DICRMU01.SYS /MA=D000-DBFF
Note: | Because of the /MA option, IBM CS will use memory in the range D0000-DBFFF only. The FRAME= parameter sets the base address of the EMS page frame (the page frame uses C0000-CFFFF). No PC Cards should be set to use memory in the range C0000-CFFFF. |